// vite.config.ts
import { defineConfig, loadEnv } from "file:///D:/project/itp/node_modules/vite/dist/node/index.js";
import vue from "file:///D:/project/itp/node_modules/@vitejs/plugin-vue/dist/index.mjs";
import path, { resolve } from "path";
import AutoImport from "file:///D:/project/itp/node_modules/unplugin-auto-import/dist/vite.js";
import Components from "file:///D:/project/itp/node_modules/unplugin-vue-components/dist/vite.mjs";
import { ElementPlusResolver } from "file:///D:/project/itp/node_modules/unplugin-vue-components/dist/resolvers.mjs";
import topLevelAwait from "file:///D:/project/itp/node_modules/vite-plugin-top-level-await/exports/import.mjs";
import { visualizer } from "file:///D:/project/itp/node_modules/rollup-plugin-visualizer/dist/plugin/index.js";
import IconsResolver from "file:///D:/project/itp/node_modules/unplugin-icons/dist/resolver.mjs";
import Icons from "file:///D:/project/itp/node_modules/unplugin-icons/dist/vite.mjs";
import { createSvgIconsPlugin } from "file:///D:/project/itp/node_modules/vite-plugin-svg-icons/dist/index.mjs";
import viteCompression from "file:///D:/project/itp/node_modules/vite-plugin-compression/dist/index.mjs";
var __vite_injected_original_dirname = "D:\\project\\itp";
var vite_config_default = defineConfig(({ mode }) => {
  let env = loadEnv(mode, process.cwd());
  const lifecycle = process.env.npm_lifecycle_event;
  return {
    plugins: [
      vue(),
      viteCompression({
        algorithm: "gzip",
        verbose: true,
        // 是否在控制台输出压缩结果信息
        threshold: 10240,
        ext: ".gz",
        // 压缩文件的后缀
        deleteOriginFile: true
        // 是否删除原文件
      }),
      AutoImport({
        // AutoImport 增加 eslintrc ，自动生成 .eslintrc-auto-import.json 文件
        eslintrc: {
          enabled: true
        },
        imports: [
          "vue",
          "@vueuse/core",
          {
            "@/store/index.ts": [["*", "store"]],
            "@/utils/loading.ts": ["showLoading", "hideLoading"],
            "@/utils/dict.ts": ["autoDict"],
            "@/utils/userInfo.ts": ["autoUserInfo"]
          }
        ],
        // 导入内置的所有api
        include: [/\.[tj]sx?$/, /\.vue$/],
        // 匹配的文件，也就是哪些后缀的文件需要自动引入
        // 生成auto-import.d.ts声明文件
        dts: "./src/auto-import.d.ts",
        resolvers: [
          IconsResolver({
            // 修改Icon组件前缀，不设置则默认为i,禁用则设置为false
            prefix: "i"
          }),
          ElementPlusResolver({
            importStyle: "sass"
          })
        ]
      }),
      Components({
        resolvers: [
          // 自动注册图标组件
          IconsResolver({
            // 指定collection，即指定为elementplus图标集ep
            enabledCollections: ["ep"]
          }),
          ElementPlusResolver({
            // 关键：自动引入修改主题色添加这一行，使用预处理样式
            importStyle: "sass"
          })
        ]
      }),
      Icons({
        scale: 1,
        // 缩放比 相对1em
        autoInstall: true,
        // 自动安装
        compiler: "vue3"
        // 编译方式
      }),
      // svg定义
      createSvgIconsPlugin({
        iconDirs: [path.resolve(process.cwd(), "src/assets/icons")],
        symbolId: "icon-[dir]-[name]"
      }),
      topLevelAwait({
        // The export name of top-level await promise for each chunk module
        promiseExportName: "__tla",
        // The function to generate import names of top-level await promise in each chunk module
        promiseImportName: (i) => `__tla_${i}`
      }),
      lifecycle === "report" ? visualizer({ open: true, brotliSize: true, filename: "report.html" }) : null
    ],
    // -----user添加配置--------
    base: "./",
    //不加打包后白屏
    resolve: {
      //别名配置，引用src路径下的东西可以通过@如：import Layout from '@/layout/index.vue'
      alias: [
        {
          find: "@",
          replacement: resolve(__vite_injected_original_dirname, "src")
        }
      ]
    },
    // -----user添加配置--------
    // css全局变量的配置
    css: {
      preprocessorOptions: {
        scss: {
          javascriptEnabled: true,
          additionalData: `@use "./src/styles/element/index.scss" as *; @use "./src/styles/variable.scss" as *;`
        }
      }
    },
    // 代理服务器
    server: {
      proxy: {
        [env.VITE_APP_BASE_API]: {
          //获取服务器地址的设置
          target: env.VITE_SERVE,
          //是否需要代理跨域
          changeOrigin: true,
          //路径重写
          rewrite: (path2) => path2.replace(/^\/api/, "")
        }
        // "/bpi": {
        //     //获取服务器地址的设置
        //     target: 'http://192.168.9.137:9233/',
        //     //是否需要代理跨域
        //     changeOrigin: true,
        //     //路径重写
        //     rewrite: (path) => path.replace(/^\/bpi/, ''),
        // }
      },
      host: "0.0.0.0"
    },
    // server: {
    //   host: '0.0.0.0',
    //   // port: 8080,
    //   open: true
    // },
    build: {
      brotliSize: false,
      // 进行压缩计算
      chunkSizeWarningLimit: 2e3,
      // chunk 大小警告的限制（以 kbs 为单位）
      rollupOptions: {
        output: {
          // 分包
          manualChunks(id) {
            if (id.includes("node_modules")) {
              return id.toString().split("node_modules/")[1].split("/")[0].toString();
            }
          }
        }
      }
    }
  };
});
export {
  vite_config_default as default
};
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsidml0ZS5jb25maWcudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbImNvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9kaXJuYW1lID0gXCJEOlxcXFxwcm9qZWN0XFxcXGl0cFwiO2NvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9maWxlbmFtZSA9IFwiRDpcXFxccHJvamVjdFxcXFxpdHBcXFxcdml0ZS5jb25maWcudHNcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfaW1wb3J0X21ldGFfdXJsID0gXCJmaWxlOi8vL0Q6L3Byb2plY3QvaXRwL3ZpdGUuY29uZmlnLnRzXCI7aW1wb3J0IHsgZGVmaW5lQ29uZmlnLCBsb2FkRW52IH0gZnJvbSAndml0ZSdcclxuaW1wb3J0IHZ1ZSBmcm9tICdAdml0ZWpzL3BsdWdpbi12dWUnXHJcbmltcG9ydCBwYXRoLCB7IHJlc29sdmUgfSBmcm9tICdwYXRoJ1xyXG5pbXBvcnQgQXV0b0ltcG9ydCBmcm9tICd1bnBsdWdpbi1hdXRvLWltcG9ydC92aXRlJ1xyXG5pbXBvcnQgQ29tcG9uZW50cyBmcm9tICd1bnBsdWdpbi12dWUtY29tcG9uZW50cy92aXRlJ1xyXG5pbXBvcnQgeyBFbGVtZW50UGx1c1Jlc29sdmVyIH0gZnJvbSAndW5wbHVnaW4tdnVlLWNvbXBvbmVudHMvcmVzb2x2ZXJzJ1xyXG5pbXBvcnQgdG9wTGV2ZWxBd2FpdCBmcm9tICd2aXRlLXBsdWdpbi10b3AtbGV2ZWwtYXdhaXQnXHJcbi8vIGltcG9ydCB6aENuICBmcm9tICdlbGVtZW50LXBsdXMvZGlzdC9sb2NhbGUvemgtY24ubWpzJ1xyXG5pbXBvcnQgeyB2aXN1YWxpemVyIH0gZnJvbSAncm9sbHVwLXBsdWdpbi12aXN1YWxpemVyJ1xyXG4vLyBcdTgxRUFcdTUyQThcdTVCRkNcdTUxNjVJY29uXHU1NkZFXHU2ODA3XHJcbmltcG9ydCBJY29uc1Jlc29sdmVyIGZyb20gJ3VucGx1Z2luLWljb25zL3Jlc29sdmVyJ1xyXG5pbXBvcnQgSWNvbnMgZnJvbSAndW5wbHVnaW4taWNvbnMvdml0ZSdcclxuLy9cdTVGMTVcdTUxNjVzdmdcdTYzRDJcdTRFRjZcclxuaW1wb3J0IHsgY3JlYXRlU3ZnSWNvbnNQbHVnaW4gfSBmcm9tICd2aXRlLXBsdWdpbi1zdmctaWNvbnMnXHJcbi8vR3ppcFx1OTE0RFx1N0Y2RVx1NEYxOFx1NTMxNlxyXG5pbXBvcnQgdml0ZUNvbXByZXNzaW9uIGZyb20gJ3ZpdGUtcGx1Z2luLWNvbXByZXNzaW9uJ1xyXG5cclxuLy8gaHR0cHM6Ly92aXRlanMuZGV2L2NvbmZpZy9cclxuZXhwb3J0IGRlZmF1bHQgZGVmaW5lQ29uZmlnKCh7IG1vZGUgfSkgPT4ge1xyXG4gICAgLy9cdTgzQjdcdTUzRDZcdTU0MDRcdTczQUZcdTU4ODNcdTUzRDhcdTkxQ0ZcclxuICAgIGxldCBlbnYgPSBsb2FkRW52KG1vZGUsIHByb2Nlc3MuY3dkKCkpXHJcbiAgICBjb25zdCBsaWZlY3ljbGUgPSBwcm9jZXNzLmVudi5ucG1fbGlmZWN5Y2xlX2V2ZW50XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICAgIHBsdWdpbnM6IFtcclxuICAgICAgICAgICAgdnVlKCksXHJcbiAgICAgICAgICAgIHZpdGVDb21wcmVzc2lvbih7XHJcbiAgICAgICAgICAgICAgICBhbGdvcml0aG06ICdnemlwJyxcclxuICAgICAgICAgICAgICAgIHZlcmJvc2U6IHRydWUsIC8vIFx1NjYyRlx1NTQyNlx1NTcyOFx1NjNBN1x1NTIzNlx1NTNGMFx1OEY5M1x1NTFGQVx1NTM4Qlx1N0YyOVx1N0VEM1x1Njc5Q1x1NEZFMVx1NjA2RlxyXG4gICAgICAgICAgICAgICAgdGhyZXNob2xkOiAxMDI0MCxcclxuICAgICAgICAgICAgICAgIGV4dDogJy5neicsIC8vIFx1NTM4Qlx1N0YyOVx1NjU4N1x1NEVGNlx1NzY4NFx1NTQwRVx1N0YwMFxyXG4gICAgICAgICAgICAgICAgZGVsZXRlT3JpZ2luRmlsZTogdHJ1ZSwgLy8gXHU2NjJGXHU1NDI2XHU1MjIwXHU5NjY0XHU1MzlGXHU2NTg3XHU0RUY2XHJcbiAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgICBBdXRvSW1wb3J0KHtcclxuICAgICAgICAgICAgICAgIC8vIEF1dG9JbXBvcnQgXHU1ODlFXHU1MkEwIGVzbGludHJjIFx1RkYwQ1x1ODFFQVx1NTJBOFx1NzUxRlx1NjIxMCAuZXNsaW50cmMtYXV0by1pbXBvcnQuanNvbiBcdTY1ODdcdTRFRjZcclxuICAgICAgICAgICAgICAgIGVzbGludHJjOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgZW5hYmxlZDogdHJ1ZSxcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICBpbXBvcnRzOiBbXHJcbiAgICAgICAgICAgICAgICAgICAgJ3Z1ZScsXHJcbiAgICAgICAgICAgICAgICAgICAgJ0B2dWV1c2UvY29yZScsXHJcbiAgICAgICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAnQC9zdG9yZS9pbmRleC50cyc6IFtbJyonLCAnc3RvcmUnXV0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdAL3V0aWxzL2xvYWRpbmcudHMnOiBbJ3Nob3dMb2FkaW5nJywgJ2hpZGVMb2FkaW5nJ10sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdAL3V0aWxzL2RpY3QudHMnOiBbJ2F1dG9EaWN0J10sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdAL3V0aWxzL3VzZXJJbmZvLnRzJzogWydhdXRvVXNlckluZm8nXSxcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBdLCAvLyBcdTVCRkNcdTUxNjVcdTUxODVcdTdGNkVcdTc2ODRcdTYyNDBcdTY3MDlhcGlcclxuICAgICAgICAgICAgICAgIGluY2x1ZGU6IFsvXFwuW3RqXXN4PyQvLCAvXFwudnVlJC9dLCAvLyBcdTUzMzlcdTkxNERcdTc2ODRcdTY1ODdcdTRFRjZcdUZGMENcdTRFNUZcdTVDMzFcdTY2MkZcdTU0RUFcdTRFOUJcdTU0MEVcdTdGMDBcdTc2ODRcdTY1ODdcdTRFRjZcdTk3MDBcdTg5ODFcdTgxRUFcdTUyQThcdTVGMTVcdTUxNjVcclxuICAgICAgICAgICAgICAgIC8vIFx1NzUxRlx1NjIxMGF1dG8taW1wb3J0LmQudHNcdTU4RjBcdTY2MEVcdTY1ODdcdTRFRjZcclxuICAgICAgICAgICAgICAgIGR0czogJy4vc3JjL2F1dG8taW1wb3J0LmQudHMnLFxyXG4gICAgICAgICAgICAgICAgcmVzb2x2ZXJzOiBbXHJcbiAgICAgICAgICAgICAgICAgICAgSWNvbnNSZXNvbHZlcih7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIFx1NEZFRVx1NjUzOUljb25cdTdFQzRcdTRFRjZcdTUyNERcdTdGMDBcdUZGMENcdTRFMERcdThCQkVcdTdGNkVcdTUyMTlcdTlFRDhcdThCQTRcdTRFM0FpLFx1Nzk4MVx1NzUyOFx1NTIxOVx1OEJCRVx1N0Y2RVx1NEUzQWZhbHNlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHByZWZpeDogJ2knLFxyXG4gICAgICAgICAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgICAgICAgICAgIEVsZW1lbnRQbHVzUmVzb2x2ZXIoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpbXBvcnRTdHlsZTogJ3Nhc3MnXHJcbiAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgIF0sXHJcbiAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgICBDb21wb25lbnRzKHtcclxuICAgICAgICAgICAgICAgIHJlc29sdmVyczogW1xyXG4gICAgICAgICAgICAgICAgICAgIC8vIFx1ODFFQVx1NTJBOFx1NkNFOFx1NTE4Q1x1NTZGRVx1NjgwN1x1N0VDNFx1NEVGNlxyXG4gICAgICAgICAgICAgICAgICAgIEljb25zUmVzb2x2ZXIoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBcdTYzMDdcdTVCOUFjb2xsZWN0aW9uXHVGRjBDXHU1MzczXHU2MzA3XHU1QjlBXHU0RTNBZWxlbWVudHBsdXNcdTU2RkVcdTY4MDdcdTk2QzZlcFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBlbmFibGVkQ29sbGVjdGlvbnM6IFsnZXAnXVxyXG4gICAgICAgICAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgICAgICAgICAgIEVsZW1lbnRQbHVzUmVzb2x2ZXIoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBcdTUxNzNcdTk1MkVcdUZGMUFcdTgxRUFcdTUyQThcdTVGMTVcdTUxNjVcdTRGRUVcdTY1MzlcdTRFM0JcdTk4OThcdTgyNzJcdTZERkJcdTUyQTBcdThGRDlcdTRFMDBcdTg4NENcdUZGMENcdTRGN0ZcdTc1MjhcdTk4ODRcdTU5MDRcdTc0MDZcdTY4MzdcdTVGMEZcclxuICAgICAgICAgICAgICAgICAgICAgICAgaW1wb3J0U3R5bGU6ICdzYXNzJ1xyXG4gICAgICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICBdLFxyXG4gICAgICAgICAgICB9KSxcclxuICAgICAgICAgICAgSWNvbnMoe1xyXG4gICAgICAgICAgICAgICAgc2NhbGU6IDEsIC8vIFx1N0YyOVx1NjUzRVx1NkJENCBcdTc2RjhcdTVCRjkxZW1cclxuICAgICAgICAgICAgICAgIGF1dG9JbnN0YWxsOiB0cnVlLCAvLyBcdTgxRUFcdTUyQThcdTVCODlcdTg4QzVcclxuICAgICAgICAgICAgICAgIGNvbXBpbGVyOiAndnVlMycgLy8gXHU3RjE2XHU4QkQxXHU2NUI5XHU1RjBGXHJcbiAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgICAvLyBzdmdcdTVCOUFcdTRFNDlcclxuICAgICAgICAgICAgY3JlYXRlU3ZnSWNvbnNQbHVnaW4oe1xyXG4gICAgICAgICAgICAgICAgaWNvbkRpcnM6IFtwYXRoLnJlc29sdmUocHJvY2Vzcy5jd2QoKSwgJ3NyYy9hc3NldHMvaWNvbnMnKV0sXHJcbiAgICAgICAgICAgICAgICBzeW1ib2xJZDogJ2ljb24tW2Rpcl0tW25hbWVdJyxcclxuICAgICAgICAgICAgfSksXHJcbiAgICAgICAgICAgIHRvcExldmVsQXdhaXQoe1xyXG4gICAgICAgICAgICAgICAgLy8gVGhlIGV4cG9ydCBuYW1lIG9mIHRvcC1sZXZlbCBhd2FpdCBwcm9taXNlIGZvciBlYWNoIGNodW5rIG1vZHVsZVxyXG4gICAgICAgICAgICAgICAgcHJvbWlzZUV4cG9ydE5hbWU6ICdfX3RsYScsXHJcbiAgICAgICAgICAgICAgICAvLyBUaGUgZnVuY3Rpb24gdG8gZ2VuZXJhdGUgaW1wb3J0IG5hbWVzIG9mIHRvcC1sZXZlbCBhd2FpdCBwcm9taXNlIGluIGVhY2ggY2h1bmsgbW9kdWxlXHJcbiAgICAgICAgICAgICAgICBwcm9taXNlSW1wb3J0TmFtZTogaSA9PiBgX190bGFfJHtpfWBcclxuICAgICAgICAgICAgfSksXHJcbiAgICAgICAgICAgIGxpZmVjeWNsZSA9PT0gJ3JlcG9ydCcgPyB2aXN1YWxpemVyKHsgb3BlbjogdHJ1ZSwgYnJvdGxpU2l6ZTogdHJ1ZSwgZmlsZW5hbWU6ICdyZXBvcnQuaHRtbCcgfSkgOiBudWxsXHJcbiAgICAgICAgXSxcclxuXHJcbiAgICAgICAgLy8gLS0tLS11c2VyXHU2REZCXHU1MkEwXHU5MTREXHU3RjZFLS0tLS0tLS1cclxuICAgICAgICBiYXNlOiAnLi8nLCAvL1x1NEUwRFx1NTJBMFx1NjI1M1x1NTMwNVx1NTQwRVx1NzY3RFx1NUM0RlxyXG4gICAgICAgIHJlc29sdmU6IHtcclxuICAgICAgICAgICAgLy9cdTUyMkJcdTU0MERcdTkxNERcdTdGNkVcdUZGMENcdTVGMTVcdTc1MjhzcmNcdThERUZcdTVGODRcdTRFMEJcdTc2ODRcdTRFMUNcdTg5N0ZcdTUzRUZcdTRFRTVcdTkwMUFcdThGQzdAXHU1OTgyXHVGRjFBaW1wb3J0IExheW91dCBmcm9tICdAL2xheW91dC9pbmRleC52dWUnXHJcbiAgICAgICAgICAgIGFsaWFzOiBbXHJcbiAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgZmluZDogJ0AnLFxyXG4gICAgICAgICAgICAgICAgICAgIHJlcGxhY2VtZW50OiByZXNvbHZlKF9fZGlybmFtZSwgJ3NyYycpXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIF1cclxuICAgICAgICB9LFxyXG4gICAgICAgIC8vIC0tLS0tdXNlclx1NkRGQlx1NTJBMFx1OTE0RFx1N0Y2RS0tLS0tLS0tXHJcbiAgICAgICAgLy8gY3NzXHU1MTY4XHU1QzQwXHU1M0Q4XHU5MUNGXHU3Njg0XHU5MTREXHU3RjZFXHJcbiAgICAgICAgY3NzOiB7XHJcbiAgICAgICAgICAgIHByZXByb2Nlc3Nvck9wdGlvbnM6IHtcclxuICAgICAgICAgICAgICAgIHNjc3M6IHtcclxuICAgICAgICAgICAgICAgICAgICBqYXZhc2NyaXB0RW5hYmxlZDogdHJ1ZSxcclxuICAgICAgICAgICAgICAgICAgICBhZGRpdGlvbmFsRGF0YTogYEB1c2UgXCIuL3NyYy9zdHlsZXMvZWxlbWVudC9pbmRleC5zY3NzXCIgYXMgKjsgQHVzZSBcIi4vc3JjL3N0eWxlcy92YXJpYWJsZS5zY3NzXCIgYXMgKjtgXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9LFxyXG4gICAgICAgIC8vIFx1NEVFM1x1NzQwNlx1NjcwRFx1NTJBMVx1NTY2OFxyXG4gICAgICAgIHNlcnZlcjoge1xyXG4gICAgICAgICAgICBwcm94eToge1xyXG4gICAgICAgICAgICAgICAgW2Vudi5WSVRFX0FQUF9CQVNFX0FQSV06IHtcclxuICAgICAgICAgICAgICAgICAgICAvL1x1ODNCN1x1NTNENlx1NjcwRFx1NTJBMVx1NTY2OFx1NTczMFx1NTc0MFx1NzY4NFx1OEJCRVx1N0Y2RVxyXG4gICAgICAgICAgICAgICAgICAgIHRhcmdldDogZW52LlZJVEVfU0VSVkUsXHJcbiAgICAgICAgICAgICAgICAgICAgLy9cdTY2MkZcdTU0MjZcdTk3MDBcdTg5ODFcdTRFRTNcdTc0MDZcdThERThcdTU3REZcclxuICAgICAgICAgICAgICAgICAgICBjaGFuZ2VPcmlnaW46IHRydWUsXHJcbiAgICAgICAgICAgICAgICAgICAgLy9cdThERUZcdTVGODRcdTkxQ0RcdTUxOTlcclxuICAgICAgICAgICAgICAgICAgICByZXdyaXRlOiAocGF0aCkgPT4gcGF0aC5yZXBsYWNlKC9eXFwvYXBpLywgJycpLFxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIC8vIFwiL2JwaVwiOiB7XHJcbiAgICAgICAgICAgICAgICAvLyAgICAgLy9cdTgzQjdcdTUzRDZcdTY3MERcdTUyQTFcdTU2NjhcdTU3MzBcdTU3NDBcdTc2ODRcdThCQkVcdTdGNkVcclxuICAgICAgICAgICAgICAgIC8vICAgICB0YXJnZXQ6ICdodHRwOi8vMTkyLjE2OC45LjEzNzo5MjMzLycsXHJcbiAgICAgICAgICAgICAgICAvLyAgICAgLy9cdTY2MkZcdTU0MjZcdTk3MDBcdTg5ODFcdTRFRTNcdTc0MDZcdThERThcdTU3REZcclxuICAgICAgICAgICAgICAgIC8vICAgICBjaGFuZ2VPcmlnaW46IHRydWUsXHJcbiAgICAgICAgICAgICAgICAvLyAgICAgLy9cdThERUZcdTVGODRcdTkxQ0RcdTUxOTlcclxuICAgICAgICAgICAgICAgIC8vICAgICByZXdyaXRlOiAocGF0aCkgPT4gcGF0aC5yZXBsYWNlKC9eXFwvYnBpLywgJycpLFxyXG4gICAgICAgICAgICAgICAgLy8gfVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICBob3N0OiAnMC4wLjAuMCcsXHJcbiAgICAgICAgfSxcclxuICAgICAgICAvLyBzZXJ2ZXI6IHtcclxuICAgICAgICAvLyAgIGhvc3Q6ICcwLjAuMC4wJyxcclxuICAgICAgICAvLyAgIC8vIHBvcnQ6IDgwODAsXHJcbiAgICAgICAgLy8gICBvcGVuOiB0cnVlXHJcbiAgICAgICAgLy8gfSxcclxuICAgICAgICBidWlsZDoge1xyXG4gICAgICAgICAgICBicm90bGlTaXplOiBmYWxzZSwgLy8gXHU4RkRCXHU4ODRDXHU1MzhCXHU3RjI5XHU4QkExXHU3Qjk3XHJcbiAgICAgICAgICAgIGNodW5rU2l6ZVdhcm5pbmdMaW1pdDogMjAwMCwgLy8gY2h1bmsgXHU1OTI3XHU1QzBGXHU4QjY2XHU1NDRBXHU3Njg0XHU5NjUwXHU1MjM2XHVGRjA4XHU0RUU1IGticyBcdTRFM0FcdTUzNTVcdTRGNERcdUZGMDlcclxuICAgICAgICAgICAgcm9sbHVwT3B0aW9uczoge1xyXG4gICAgICAgICAgICAgICAgb3V0cHV0OiB7Ly8gXHU1MjA2XHU1MzA1XHJcbiAgICAgICAgICAgICAgICAgICAgbWFudWFsQ2h1bmtzKGlkKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpZC5pbmNsdWRlcyhcIm5vZGVfbW9kdWxlc1wiKSkgeyByZXR1cm4gaWQudG9TdHJpbmcoKS5zcGxpdChcIm5vZGVfbW9kdWxlcy9cIilbMV0uc3BsaXQoXCIvXCIpWzBdLnRvU3RyaW5nKCkgfVxyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgIH0sXHJcbiAgICB9XHJcbn0pXHJcbiJdLAogICJtYXBwaW5ncyI6ICI7QUFBa08sU0FBUyxjQUFjLGVBQWU7QUFDeFEsT0FBTyxTQUFTO0FBQ2hCLE9BQU8sUUFBUSxlQUFlO0FBQzlCLE9BQU8sZ0JBQWdCO0FBQ3ZCLE9BQU8sZ0JBQWdCO0FBQ3ZCLFNBQVMsMkJBQTJCO0FBQ3BDLE9BQU8sbUJBQW1CO0FBRTFCLFNBQVMsa0JBQWtCO0FBRTNCLE9BQU8sbUJBQW1CO0FBQzFCLE9BQU8sV0FBVztBQUVsQixTQUFTLDRCQUE0QjtBQUVyQyxPQUFPLHFCQUFxQjtBQWY1QixJQUFNLG1DQUFtQztBQWtCekMsSUFBTyxzQkFBUSxhQUFhLENBQUMsRUFBRSxLQUFLLE1BQU07QUFFdEMsTUFBSSxNQUFNLFFBQVEsTUFBTSxRQUFRLElBQUksQ0FBQztBQUNyQyxRQUFNLFlBQVksUUFBUSxJQUFJO0FBQzlCLFNBQU87QUFBQSxJQUNILFNBQVM7QUFBQSxNQUNMLElBQUk7QUFBQSxNQUNKLGdCQUFnQjtBQUFBLFFBQ1osV0FBVztBQUFBLFFBQ1gsU0FBUztBQUFBO0FBQUEsUUFDVCxXQUFXO0FBQUEsUUFDWCxLQUFLO0FBQUE7QUFBQSxRQUNMLGtCQUFrQjtBQUFBO0FBQUEsTUFDdEIsQ0FBQztBQUFBLE1BQ0QsV0FBVztBQUFBO0FBQUEsUUFFUCxVQUFVO0FBQUEsVUFDTixTQUFTO0FBQUEsUUFDYjtBQUFBLFFBQ0EsU0FBUztBQUFBLFVBQ0w7QUFBQSxVQUNBO0FBQUEsVUFDQTtBQUFBLFlBQ0ksb0JBQW9CLENBQUMsQ0FBQyxLQUFLLE9BQU8sQ0FBQztBQUFBLFlBQ25DLHNCQUFzQixDQUFDLGVBQWUsYUFBYTtBQUFBLFlBQ25ELG1CQUFtQixDQUFDLFVBQVU7QUFBQSxZQUM5Qix1QkFBdUIsQ0FBQyxjQUFjO0FBQUEsVUFDMUM7QUFBQSxRQUNKO0FBQUE7QUFBQSxRQUNBLFNBQVMsQ0FBQyxjQUFjLFFBQVE7QUFBQTtBQUFBO0FBQUEsUUFFaEMsS0FBSztBQUFBLFFBQ0wsV0FBVztBQUFBLFVBQ1AsY0FBYztBQUFBO0FBQUEsWUFFVixRQUFRO0FBQUEsVUFDWixDQUFDO0FBQUEsVUFDRCxvQkFBb0I7QUFBQSxZQUNoQixhQUFhO0FBQUEsVUFDakIsQ0FBQztBQUFBLFFBQ0w7QUFBQSxNQUNKLENBQUM7QUFBQSxNQUNELFdBQVc7QUFBQSxRQUNQLFdBQVc7QUFBQTtBQUFBLFVBRVAsY0FBYztBQUFBO0FBQUEsWUFFVixvQkFBb0IsQ0FBQyxJQUFJO0FBQUEsVUFDN0IsQ0FBQztBQUFBLFVBQ0Qsb0JBQW9CO0FBQUE7QUFBQSxZQUVoQixhQUFhO0FBQUEsVUFDakIsQ0FBQztBQUFBLFFBQ0w7QUFBQSxNQUNKLENBQUM7QUFBQSxNQUNELE1BQU07QUFBQSxRQUNGLE9BQU87QUFBQTtBQUFBLFFBQ1AsYUFBYTtBQUFBO0FBQUEsUUFDYixVQUFVO0FBQUE7QUFBQSxNQUNkLENBQUM7QUFBQTtBQUFBLE1BRUQscUJBQXFCO0FBQUEsUUFDakIsVUFBVSxDQUFDLEtBQUssUUFBUSxRQUFRLElBQUksR0FBRyxrQkFBa0IsQ0FBQztBQUFBLFFBQzFELFVBQVU7QUFBQSxNQUNkLENBQUM7QUFBQSxNQUNELGNBQWM7QUFBQTtBQUFBLFFBRVYsbUJBQW1CO0FBQUE7QUFBQSxRQUVuQixtQkFBbUIsT0FBSyxTQUFTLENBQUM7QUFBQSxNQUN0QyxDQUFDO0FBQUEsTUFDRCxjQUFjLFdBQVcsV0FBVyxFQUFFLE1BQU0sTUFBTSxZQUFZLE1BQU0sVUFBVSxjQUFjLENBQUMsSUFBSTtBQUFBLElBQ3JHO0FBQUE7QUFBQSxJQUdBLE1BQU07QUFBQTtBQUFBLElBQ04sU0FBUztBQUFBO0FBQUEsTUFFTCxPQUFPO0FBQUEsUUFDSDtBQUFBLFVBQ0ksTUFBTTtBQUFBLFVBQ04sYUFBYSxRQUFRLGtDQUFXLEtBQUs7QUFBQSxRQUN6QztBQUFBLE1BQ0o7QUFBQSxJQUNKO0FBQUE7QUFBQTtBQUFBLElBR0EsS0FBSztBQUFBLE1BQ0QscUJBQXFCO0FBQUEsUUFDakIsTUFBTTtBQUFBLFVBQ0YsbUJBQW1CO0FBQUEsVUFDbkIsZ0JBQWdCO0FBQUEsUUFDcEI7QUFBQSxNQUNKO0FBQUEsSUFDSjtBQUFBO0FBQUEsSUFFQSxRQUFRO0FBQUEsTUFDSixPQUFPO0FBQUEsUUFDSCxDQUFDLElBQUksaUJBQWlCLEdBQUc7QUFBQTtBQUFBLFVBRXJCLFFBQVEsSUFBSTtBQUFBO0FBQUEsVUFFWixjQUFjO0FBQUE7QUFBQSxVQUVkLFNBQVMsQ0FBQ0EsVUFBU0EsTUFBSyxRQUFRLFVBQVUsRUFBRTtBQUFBLFFBQ2hEO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLE1BU0o7QUFBQSxNQUNBLE1BQU07QUFBQSxJQUNWO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLElBTUEsT0FBTztBQUFBLE1BQ0gsWUFBWTtBQUFBO0FBQUEsTUFDWix1QkFBdUI7QUFBQTtBQUFBLE1BQ3ZCLGVBQWU7QUFBQSxRQUNYLFFBQVE7QUFBQTtBQUFBLFVBQ0osYUFBYSxJQUFJO0FBQ2IsZ0JBQUksR0FBRyxTQUFTLGNBQWMsR0FBRztBQUFFLHFCQUFPLEdBQUcsU0FBUyxFQUFFLE1BQU0sZUFBZSxFQUFFLENBQUMsRUFBRSxNQUFNLEdBQUcsRUFBRSxDQUFDLEVBQUUsU0FBUztBQUFBLFlBQUU7QUFBQSxVQUMvRztBQUFBLFFBQ0o7QUFBQSxNQUNKO0FBQUEsSUFDSjtBQUFBLEVBQ0o7QUFDSixDQUFDOyIsCiAgIm5hbWVzIjogWyJwYXRoIl0KfQo=
